/*
 * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
 * Licensed under the 【火山方舟】原型应用软件自用许可协议
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at 
 *     https://www.volcengine.com/docs/82379/1433703
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import { Template } from '../../PuzzleBoard';

export const previewPortrait = {
  width: 800,
  height: 450,
  pieces: [
    {
      path: '',
    },
    {
      path: '',
    },
    {
      path: '',
    },
    {
      path: '',
    },
    {
      path: '',
    },
    {
      path: '',
    },
    {
      path: '',
    },
  ],
};

const templates: Record<number, Template[]> = {
  1: [
    {
      width: 258,
      height: 450,
      pieces: [
        {
          path: 'M8 14C8 10.6863 10.6863 8 14 8H244C247.314 8 250 10.6863 250 14V436C250 439.314 247.314 442 244 442H14C10.6863 442 8 439.314 8 436V14Z',
        },
      ],
    },
  ],
  2: [
    {
      width: 450,
      height: 450,
      pieces: [
        {
          path: 'M249.335 442H14C10.6863 442 8 439.314 8 436V14C8 10.6863 10.6863 8 14 8H210.532L249.335 442Z',
        },
        {
          path: 'M435.988 8C439.302 8 441.988 10.6863 441.988 14V436C441.988 439.314 439.302 442 435.988 442H257.365L218.562 8H435.988Z',
        },
      ],
    },
  ],
  3: [
    {
      width: 800,
      height: 450,
      pieces: [
        {
          path: 'M209.832 442H14C10.6863 442 8 439.314 8 436V14C8 10.6863 10.6863 8 14 8H302.082L209.832 442Z',
        },
        {
          path: 'M492.832 442H218.012L310.262 8H585.082L492.832 442Z',
        },
        {
          path: 'M785.995 8C789.309 8 791.995 10.6863 791.995 14V436C791.995 439.314 789.309 442 785.995 442H501.012L593.261 8H785.995Z',
        },
      ],
    },
    {
      width: 368,
      height: 450,
      pieces: [
        {
          path: 'M192.461 442H14C10.6863 442 8 439.314 8 436V14C8 10.6863 10.6863 8 14 8H234.722L192.461 442Z',
        },
        {
          path: 'M354 8C357.314 8 360 10.6863 360 14V202.749L222.492 216.126L242.759 8H354Z',
        },
        {
          path: 'M360 436C360 439.314 357.314 442 354 442H200.496L221.7 224.241L360 210.786V436Z',
        },
      ],
    },
  ],
  4: [
    {
      width: 643,
      height: 450,
      pieces: [
        {
          path: 'M214.315 442H14C10.6863 442 8 439.314 8 436V14C8 10.6863 10.6863 8 14 8H267.443L214.315 442Z',
        },
        {
          path: 'M487.566 442H222.371L275.5 8H487.566V442Z',
        },
        {
          path: 'M629 8C632.314 8.00001 635 10.6863 635 14V206.141L495.566 228.712V8H629Z',
        },
        {
          path: 'M635 436C635 439.314 632.314 442 629 442H495.566V236.815L635 214.245V436Z',
        },
      ],
    },
    {
      width: 258,
      height: 450,
      pieces: [
        {
          path: 'M133.185 220.084L8 252.11V14C8 10.6863 10.6863 8 14 8H108.385L133.185 220.084Z',
        },
        {
          path: 'M244.001 8C247.315 8 250.001 10.6863 250.001 14V190.198L141.006 218.082L116.441 8H244.001Z',
        },
        {
          path: 'M145.321 442H14C10.6863 442 8 439.314 8 436V260.368L120.708 231.533L145.321 442Z',
        },
        {
          path: 'M250.013 436C250.013 439.314 247.326 442 244.013 442H153.376L128.531 229.535L250.013 198.456V436Z',
        },
      ],
    },
  ],
  5: [
    {
      width: 344,
      height: 450,
      pieces: [
        {
          path: 'M98.2822 175.262L8 162.587V14C8 10.6863 10.6863 8 14 8H124.616L98.2822 175.262Z',
        },
        {
          path: 'M226.974 193.328L106.207 176.374L132.716 8H219.367L226.974 193.328Z',
        },
        {
          path: 'M330.021 8C333.335 8 336.021 10.6863 336.021 14V208.634L235.027 194.455L227.375 8H330.021Z',
        },
        {
          path: 'M159.091 191.877L195.991 442H14C10.6863 442 8 439.314 8 436V170.666L159.091 191.877Z',
        },
        {
          path: 'M335.973 216.713V436C335.973 439.314 333.286 442 329.973 442H204.077L167.348 193.04L335.973 216.713Z',
        },
      ],
    },
    {
      width: 258,
      height: 450,
      pieces: [
        {
          path: 'M175.073 224.476L8 244.989V14C8 10.6863 10.6863 8 14 8H176.55L175.073 224.476Z',
        },
        {
          path: 'M244.017 8C247.33 8 250.017 10.6863 250.017 14V112.775L183.781 120.908L184.551 8H244.017Z',
        },
        {
          path: 'M249.99 215.275L183.078 223.491L183.722 128.972L249.99 120.836V215.275Z',
        },
        {
          path: 'M103.459 442H14C10.6863 442 8 439.314 8 436V253.05L147.255 235.951L103.459 442Z',
        },
        {
          path: 'M250.012 436C250.012 439.314 247.325 442 244.012 442H111.637L155.652 234.921L250.012 223.336V436Z',
        },
      ],
    },
  ],
  6: [
    {
      width: 324,
      height: 450,
      pieces: [
        {
          path: 'M97.3984 153.363L8 164.34V14C8 10.6863 10.6863 8 14 8H120.284L97.3984 153.363Z',
        },
        {
          path: 'M213.271 139.136L105.656 152.349L128.383 8H207.89L213.271 139.136Z',
        },
        {
          path: 'M310 8C313.314 8 316 10.6863 316 14V126.522L221.236 138.157L215.895 8H310Z',
        },
        {
          path: 'M238.678 442H14C10.6863 442 8 439.314 8 436V172.399L195.507 149.377L238.678 442Z',
        },
        {
          path: 'M316.001 282.846L222.772 279.383L203.449 148.401L316.001 134.582V282.846Z',
        },
        {
          path: 'M315.998 290.856V436C315.998 439.314 313.312 442 309.998 442H246.763L223.961 287.438L315.998 290.856Z',
        },
      ],
    },
    {
      width: 675,
      height: 450,
      pieces: [
        {
          path: 'M275.008 442H14C10.6863 442 8 439.314 8 436V14C8 10.6863 10.6863 8 14 8H326.614L275.008 442Z',
        },
        {
          path: 'M425.108 185.329L312.352 195.708L334.672 8H436.998L425.108 185.329Z',
        },
        {
          path: 'M569.554 172.031L433.164 184.585L445.003 8H549.26L569.554 172.031Z',
        },
        {
          path: 'M661.001 8C664.315 8.00001 667.001 10.6863 667.001 14V163.064L577.539 171.298L557.336 8H661.001Z',
        },
        {
          path: 'M507.656 441.999H283.062L311.383 203.827L483.74 187.964L507.656 441.999Z',
        },
        {
          path: 'M666.981 436C666.981 439.314 664.295 442 660.981 442H515.696L491.711 187.229L666.981 171.098V436Z',
        },
      ],
    },
  ],
  7: [
    {
      width: 675,
      height: 450,
      pieces: [
        {
          path: 'M220.287 442H14C10.6863 442 8 439.314 8 436V14C8 10.6863 10.6863 8 14 8H223.049L220.287 442Z',
        },
        {
          path: 'M372.276 249.944L229.371 271.613L231.05 8H358.194L372.276 249.944Z',
        },
        {
          path: 'M495.041 231.331L380.22 248.741L366.207 8H515.058L495.041 231.331Z',
        },
        {
          path: 'M661 8C664.314 8.00001 667 10.6863 667 14V205.258L503.184 230.096L523.089 8H661Z',
        },
        {
          path: 'M375.753 442H228.289L229.321 279.713L347.095 261.855L375.753 442Z',
        },
        {
          path: 'M514.327 441.997H383.852L355.004 260.654L525.277 234.836L514.327 441.997Z',
        },
        {
          path: 'M667.002 436C667.002 439.314 664.316 442 661.002 442H522.336L533.351 233.614L667.002 213.35V436Z',
        },
      ],
    },
    {
      width: 509,
      height: 450,
      pieces: [
        {
          path: 'M150.007 160.932L150 160.934L150.003 160.946L149.999 160.962L150.007 160.964L178.845 281.146L8 299.39V14C8 10.6863 10.6863 8 14 8H193.981L150.007 160.932Z',
        },
        {
          path: 'M347.343 263.154L186.865 280.29L158.273 161.129L202.304 8H337.988L347.343 263.154Z',
        },
        {
          path: 'M495.002 8C498.316 8 501.002 10.6863 501.002 14V246.747L355.323 262.303L346 8H495.002Z',
        },
        {
          path: 'M103.532 442H14C10.6863 442 8 439.314 8 436V307.436L126.713 294.759L103.532 442Z',
        },
        {
          path: 'M245.431 442H111.629L134.947 293.88L231.761 283.542L245.431 442Z',
        },
        {
          path: 'M365.5 442H253.462L239.719 282.692L379.679 267.747L365.5 442Z',
        },
        {
          path: 'M501.001 436C501.001 439.314 498.315 442 495.001 442H373.523L387.772 266.883L501.001 254.793V436Z',
        },
      ],
    },
  ],
  8: [
    {
      width: 258,
      height: 450,
      pieces: [
        {
          path: 'M67.3193 146.911H8V14C8 10.6863 10.6863 8 14 8H96.8457L67.3193 146.911Z',
        },
        {
          path: 'M162.422 146.911H75.5L105.026 8H170.597L162.422 146.911Z',
        },
        {
          path: 'M244 8C247.314 8 250 10.6863 250 14V146.911H170.438L178.613 8H244Z',
        },
        {
          path: 'M105.653 321H8V154.911H140.956L105.653 321Z',
        },
        {
          path: 'M249.998 321H113.828L149.132 154.911H249.998V321Z',
        },
        {
          path: 'M86.9004 442H14C10.6863 442 8 439.314 8 436V329H81.082L86.9004 442Z',
        },
        {
          path: 'M159.184 442H94.9121L89.0938 329H164.949L159.184 442Z',
        },
        {
          path: 'M250 436C250 439.314 247.314 442 244 442H167.191L172.957 329H250V436Z',
        },
      ],
    },
    {
      width: 800,
      height: 450,
      pieces: [
        {
          path: 'M143 216.528L8 216.056V14C8 10.6863 10.6863 8 14 8H143V216.528Z',
        },
        {
          path: 'M143 224.528V442H14C10.6863 442 8 439.314 8 436V224.056L143 224.528Z',
        },
        {
          path: 'M417.468 442H151V8H394.161L417.468 442Z',
        },
        {
          path: 'M535 184.756L411.793 187.172L402.172 8H535V184.756Z',
        },
        {
          path: 'M658.001 182.344L543 184.599V8H658.001V182.344Z',
        },
        {
          path: 'M786 8C789.314 8 792 10.6863 792 14V179.717L666 182.187V8H786Z',
        },
        {
          path: 'M597.001 441.999H425.479L412.223 195.164L597.001 191.541V441.999Z',
        },
        {
          path: 'M792 436C792 439.314 789.314 442 786 442H605V191.384L792 187.718V436Z',
        },
      ],
    },
  ],
  9: [
    {
      width: 399,
      height: 450,
      pieces: [
        { path: 'M94.8867 121.242L8 131.911V14C8 10.6863 10.6863 8 14 8H101.965L94.8867 121.242Z' },
        { path: 'M87.0283 246.986L8 257.305V139.972L94.3799 129.365L87.0283 246.986Z' },
        { path: 'M238.871 227.16L95.1094 245.932L109.979 8H252.568L238.871 227.16Z' },
        { path: 'M385.996 8C389.31 8 391.996 10.6863 391.996 14V207.168L246.965 226.104L260.597 8H385.996Z' },
        { path: 'M101.156 442H14C10.6863 442 8 439.314 8 436V265.375L89.4521 254.739L101.156 442Z' },
        { path: 'M204.904 442H109.171L97.4023 253.702L192.36 241.303L204.904 442Z' },
        { path: 'M321.522 442H212.921L200.312 240.263L308.035 226.198L321.522 442Z' },
        { path: 'M391.977 331.177L322.734 333.036L315.992 225.158L391.977 215.237V331.177Z' },
        {
          path: 'M391.993 435.975C391.993 439.288 389.307 441.975 385.993 441.975H329.544L323.234 341.023L391.993 339.177V435.975Z',
        },
      ],
    },
    {
      width: 675,
      height: 450,
      pieces: [
        { path: 'M116.806 235.31L8 245.325V14C8 10.6863 10.6863 8 14 8H141.504L116.806 235.31Z' },
        {
          path: 'M94.3486 441.986H14C10.6863 441.986 8 439.3 8 435.986V253.358L115.923 243.425L94.3486 441.986Z',
        },
        { path: 'M264 185.494L130.051 187.499L149.555 8H264V185.494Z' },
        { path: 'M377.626 183.795L272 185.375V8H401.767L377.626 183.795Z' },
        { path: 'M517.637 181.7L385.719 183.674L409.844 8H541.49L517.637 181.7Z' },
        { path: 'M661 8C664.314 8.00001 667 10.6863 667 14V179.464L525.73 181.578L549.566 8H661Z' },
        { path: 'M291 442H102.395L129.176 195.514L291 193.093V442Z' },
        { path: 'M491.722 441.996H299V192.972L450.559 190.704L491.722 441.996Z' },
        { path: 'M667 436C667 439.314 664.314 442 661 442H499.827L458.645 190.583L667 187.466V436Z' },
      ],
    },
  ],
};

export default templates;
